home *** CD-ROM | disk | FTP | other *** search
/ Mac100% 1999 April / MAC100-1999-04.ISO.7z / MAC100-1999-04.ISO / Macintosh基礎講座 / エディタ / LightWayText 2.1.1 / マクロサンプル / マクロエディタ説明書 < prev    next >
Text File  |  1998-01-15  |  18KB  |  343 lines

  1. マクロエディタ説明書
  2.  
  3. 1.マクロエディタについて
  4.  マクロエディタはLightWayTextのマクロを編集するツールです。マクロとは、文字入力・キー操作・メニューの実行など、一連の操作を記述して自動実行するスクリプトです。
  5. LightWayTextのマクロは、編集メニュー-キーマクロメニューの「キーマクロ記録」で記述される文字入力・キー操作・メニューの実行にくわえて、マクロ内のジャンプ、変数による計算、比較による条件文の指定、入力ダイアログの表示などが記述できます。
  6. 作成したマクロはキーマクロメニューに登録されて、メニューから実行することができます。また、作成したマクロをファンクションキーに割り当てることもできます。
  7. マクロエディタはLightWayTextの編集メニュー-キーマクロメニューの「マクロエディタ...」を実行すると表示されます。
  8.     ハ
  9.  
  10.  
  11. 2.マクロエディタの基本動作
  12.  マクロエディタを開くと、新規マクロの編集状態になります。あらかじめキーマクロ記録を実行しているときは、キーマクロの内容がマクロリストに表示されます。マクロリストには、1番から順にマクロコマンドが表示され、この番号順にマクロコマンドが実行されることになります。新規コマンドポップアップメニューからマクロコマンドを選択すると、マクロリストに追加されます。マクロエディタの右側はマクロコマンド編集エリアとなり、マクロを編集することができます。マクロ名を入力して、「更新」ボタンを押すとキーマクロメニューに登録されます。
  13.  
  14. 2.1.マクロ名:
  15.  編集をおこなうマクロの名前を表示します。すでに登録しているマクロを編集する場合は、マクロ名の編集枠の右にあるハポップアップメニューからマクロ名を選択します。ポップアップメニューの「新規マクロ」を選択すると、新規マクロの作成となり、あらかじめキーマクロ記録を実行しているときは、キーマクロの内容がマクロリストに表示されます。そして、マクロ名を入力して新規マクロを登録します。マクロ名を変更すると新しい名前でマクロが登録されます。
  16.  
  17. 2.2.マクロの内容:
  18.  編集するマクロのコマンド一覧がリスト表示されます。マクロリストには、実行されるコマンドが1から順に番号がついて表示されます。マクロリストのアイテムを選択すると、そのコマンドの状態が、マクロエディタの右側のマクロコマンド編集エリアに表示されます。
  19.  
  20. 2.3.新規コマンド:
  21.  新規コマンドのハポップアップメニューで、編集中のマクロにマクロコマンドを追加します。マクロコマンドには、メニュー・文字入力・キー操作・ジャンプ・ラベル・変数・比較・検索・問合せ・その他があります。
  22.  新規コマンドを実行すると、マクロリスト内で選択しているアイテムの後ろに挿入されます。Shiftキーを押しながら新規コマンドを実行すると、マクロリスト内で選択しているアイテムの手前に挿入されます。マクロリストのアイテムが何も選択されてないときは、リストの一番最後に追加されます。Shiftキーを押しているとリストの一番最初に挿入されます。
  23.  
  24. 2.4.マクロリストの編集(カット・コピー・ペースト・消去)
  25.  編集メニューからカット・コピー・ペースト・消去を実行することにより、マクロリストを編集することができます。deleteキーで消去が実行されます。
  26.  ペーストを実行すると、マクロリスト内で選択しているアイテムの後ろに挿入されます。Shiftキーを押しながらペーストを実行すると、マクロリスト内で選択しているアイテムの手前に挿入されます。マクロリストのアイテムが何も選択されてないときは、リストの一番最後に追加されます。Shiftキーを押しているとリストの一番最初に挿入されます。
  27.  
  28. 2.5.マクロオプション
  29.  作成したマクロをファンクションキーに割り当てたり、キーマクロメニューに表示しなくするオプションを指定することができます。
  30.  ファンクションキー
  31.   F1からF15までのファンクションキーにマクロを割り当てます。
  32.   編集枠に1から15までの数値を入力することでファンクションキーを指定します。
  33.   15より大きい数字を入力した場合は、実行されません。
  34.   また、Shift+ファンクションキーとOption+ファンクションキーを指定できます。
  35.  メニュー表示しない
  36.   マクロを編集メニュー-キーマクロメニューに表示されなくします。
  37.   ファンクションキーにのみ設定したい場合に利用します。
  38.  
  39. 2.6.読み込む...
  40.  ファイル開くダイアログを表示して、マクロサンプルなどのマクロファイルを読み込みます。マクロを読み込むとキーマクロメニューに自動的に登録されて、マクロエディタの編集画面にマクロの内容が表示されます。
  41.  
  42. 2.7.書き出す...
  43.  ファイル保存ダイアログを表示して、編集中のマクロをファイルとして書き出します。マクロ名がそのままファイル名となります。
  44.  
  45. 2.8.更新
  46.  編集中のマクロを更新してLightWayTextで利用可能にします。新規マクロの場合は、入力したマクロ名でキーマクロメニューに登録されます。また、マクロ名が入力されていないときはキーマクロメニューの「キーマクロ実行」で実行することができるようになります。編集中のマクロにシンタックスエラー(ジャンプ先の番号やラベルが存在しないとき)がある場合は、アラートが表示されて、マクロの修正をうながします。
  47.  
  48. 2.9.マクロコマンド編集エリア
  49.  マクロリスト内のアイテムを選択または、新規コマンドを実行すると、そのコマンドの状態が、マクロエディタの右側のマクロコマンド編集エリアに表示されます。
  50.  
  51.  
  52. 3.マクロコマンドの説明
  53.  マクロコマンドには、メニュー・文字入力・キー操作・ジャンプ・ラベル・変数・比較・検索・問合せ・その他があり、その内容により編集画面が変わります。
  54.  
  55. 3.1.メニュー
  56.  メニューコマンドを本物のメニューバーから直接選択します。
  57.     ハ
  58.  必ず、マクロの内容リストが太枠で囲まれた状態でメニュー選択してください。マクロ名の編集枠にカーソルがあるときはメニュー選択できません。
  59.  
  60. 3.2.文字入力
  61.  文字の編集枠に、LightWayTextにペーストしたい文字列を入力します。改行を含んだ約10000文字が入力できます。
  62.     ハ
  63.  
  64. 3.3.キー操作
  65.  LightWayTextのキー操作を指定します。
  66.     ハ
  67.  キー操作:
  68.     カーソル移動    左へ移動・右へ移動・上へ移動・下へ移動
  69.                     1単語左へ移動・1単語右へ移動・行の左端へ移動・行の右端へ移動
  70.                     1画面上へ移動・1画面下へ移動・行頭へ移動・行末へ移動
  71.     スクロール        左へスクロール・右へスクロール・上へスクロール・下へスクロール
  72.     文字削除        1文字左を削除・1文字右を削除・1単語左を削除・1単語右を削除
  73.                     行頭までを削除・行末までを削除・1行を削除・行削除の復活
  74.  文字選択
  75.   カーソル移動のキー操作に文字選択(Shiftキーの動作)を指定できます。
  76.  回数:
  77.   キー操作の繰り返し回数を指定します。編集枠に1から999までの数値が入力できます。
  78.  
  79. 3.4.ジャンプ
  80.  マクロリスト内でジャンプしてマクロ処理の分岐をおこないます。このジャンプコマンドはプログラミング言語のgoto文に相当します。
  81.     ハ
  82.  ジャンプ[番号]        マクロリストのコマンド番号を数値で指定します。
  83.  ジャンプ[ラベル]    ジャンプ先のラベル名を指定します。ラベルコマンドを参照。
  84.  終了する                マクロの実行を終了します。
  85.  番号・ラベル名:        ジャンプ[番号]・ジャンプ[ラベル]を指定したときに、
  86.                         番号を数値で、ラベル名を文字で入力します。
  87. LightWayTextの編集カーソルを行番号ジャンプさせたい場合は、このジャンプコマンドではなく、その他コマンドのなかの「行番号を指定して移動」を使用します。
  88.  
  89. 3.5.ラベル
  90.  ラベルはジャンプコマンドのジャンプ先の名前や、マクロのなかのコメントの記述に利用します。ラベル自体はなにも処理をおこないません。
  91.     ハ
  92.  ラベル名:        編集枠にラベル名を文字入力します。
  93.  
  94. 3.6.変数
  95.  マクロの実行中に、数値の計算や、文字列を保持していたいときは変数を利用します。変数には、文字変数と数値変数があり、それぞれ8個まで利用できます。この変数は、後で説明する比較・検索・問合せ・その他のコマンドで使用します。
  96.     ハ
  97.  処理対象:        処理の対象となる変数(文字変数1〜8・数値変数1〜8)を指定します。
  98.  処理:            変数に対する処理を指定します。
  99.     初期化            文字変数の内容を空に、数値変数の内容を0にします。
  100.     ペースト        変数の内容を文字列としてLightWayTextにペーストします。
  101.     代入(=)        文字変数に文字を、数値変数に数値を代入します。
  102.     追加(+)        文字変数に文字を追加、数値変数に数値を足し算します。
  103.     引算(−)        数値変数に数値を引き算します。
  104.     乗算(×)        数値変数に数値をかけ算します。
  105.     除算(÷)        数値変数に数値をわり算します。処理内容が0だと何もしません。
  106.     剰余(%)        数値変数に数値でわったあまりの数値を代入します。
  107.  処理内容:        処理対象が文字変数のときは文字として、処理対象が数値変数のときは
  108.                     数値として処理をおこないます。
  109.     指定なし                変数に対する処理をおこないません。
  110.     文字・数値                編集枠に文字変数は文字を、数値変数は数値を入力します。
  111.     カーソル位置の文字        カーソル位置の1文字を指定します。
  112.     カーソル行の文字列        カーソル行の1行の文字列を指定します。
  113.     選択された文字列        選択された文字列を指定します。
  114.     カーソル位置の行番号    カーソル位置の行番号を指定します。
  115.     カーソル位置の列番号    カーソル位置の列番号を指定します。
  116.     カーソル行の文字数        カーソル行の1行の文字数を指定します。
  117.     選択終了位置の行番号    選択終了位置の行番号を指定します。
  118.     選択終了位置の列番号    選択終了位置の列番号を指定します。
  119.     選択された文字数        選択された文字数を指定します。選択していないときは0です。
  120.     最終行番号                最終(最大)行番号を指定します。
  121.     文字変数1〜8            文字変数1〜8を指定します。
  122.     数値変数1〜8            数値変数1〜8を指定します。
  123.         カーソル位置とは、選択状態のときは選択開始位置(選択範囲の左上)です。
  124.         選択終了位置とは、選択範囲の右下です。
  125.         処理対象が文字変数で、処理内容が数値のときは、数値を文字列として処理します。
  126.         処理対象が数値変数で、処理内容が文字のときは、0〜9の文字列のときは数値として
  127.         処理します。それ以外の文字列のときは0として処理します。
  128.  
  129. 3.7.比較
  130.  マクロの実行中に、比較による条件文の処理をおこないます。比較が正しいときと違うときのそれぞれにジャンプコマンドを指定することができます。
  131.     ハ
  132.  比較対象:        比較の対象となる項目を指定します。
  133.     指定なし                比較対象を数値の0に指定します。
  134.     カーソル位置の文字        カーソル位置の1文字を指定します。
  135.     カーソル行の文字列        カーソル行の1行の文字列を指定します。
  136.     選択された文字列        選択された文字列を指定します。
  137.     カーソル位置の行番号    カーソル位置の行番号を指定します。
  138.     カーソル位置の列番号    カーソル位置の列番号を指定します。
  139.     カーソル行の文字数        カーソル行の1行の文字数を指定します。
  140.     選択終了位置の行番号    選択終了位置の行番号を指定します。
  141.     選択終了位置の列番号    選択終了位置の列番号を指定します。
  142.     選択された文字数        選択された文字数を指定します。選択していないときは0です。
  143.     最終行番号                最終(最大)行番号を指定します。
  144.     文字変数1〜8            文字変数1〜8を指定します。
  145.     数値変数1〜8            数値変数1〜8を指定します。
  146.  条件:            比較に対する条件を指定します。
  147.     同じ(==)            比較対象と比較相手の内容が同じとき。
  148.     違う(!=)            比較対象と比較相手の内容が違うとき。
  149.     以上(>=)            比較対象の内容が比較相手と同じか大きいとき。
  150.     以下(<=)            比較対象の内容が比較相手と同じか小さいとき。
  151.     大きい(>)            比較対象の内容が比較相手より大きいとき。
  152.     小さい(<)            比較対象の内容が比較相手より小さいとき。
  153.  比較相手:        比較対象が文字変数のときは文字として、比較対象が数値変数のときは
  154.                     数値として比較をおこないます。
  155.     指定なし                比較相手を数値の0に指定します。
  156.     文字・数値                編集枠に比較対象により文字または数値を入力します。
  157.     カーソル位置の文字        カーソル位置の1文字を指定します。
  158.     カーソル行の文字列        カーソル行の1行の文字列を指定します。
  159.     選択された文字列        選択された文字列を指定します。
  160.     カーソル位置の行番号    カーソル位置の行番号を指定します。
  161.     カーソル位置の列番号    カーソル位置の列番号を指定します。
  162.     カーソル行の文字数        カーソル行の1行の文字数を指定します。
  163.     選択終了位置の行番号    選択終了位置の行番号を指定します。
  164.     選択終了位置の列番号    選択終了位置の列番号を指定します。
  165.     選択された文字数        選択された文字数を指定します。選択していないときは0です。
  166.     最終行番号                最終(最大)行番号を指定します。
  167.     文字変数1〜8            文字変数1〜8を指定します。
  168.     数値変数1〜8            数値変数1〜8を指定します。
  169.         カーソル位置とは、選択状態のときは選択開始位置(選択範囲の左上)です。
  170.         選択終了位置とは、選択範囲の右下です。
  171.         比較対象が文字で、比較相手が数値のときは、数値を文字列として比較します。
  172.         比較対象が数値で、比較相手が文字のときは、0〜9の文字列のときは数値として
  173.         比較します。それ以外の文字列のときは0として比較します。
  174.  
  175.  比較が正しいとき:    比較の結果が正しいときに、ジャンプコマンドを実行します。
  176.     なにもしない            なにもしません。
  177.     ジャンプ[番号]        編集枠にマクロリストのコマンド番号を数値で入力します。
  178.     ジャンプ[ラベル]        編集枠にジャンプ先のラベル名を入力します。
  179.     終了する                マクロの実行を終了します。
  180.  比較が違うとき:        比較の結果が違うときに、ジャンプコマンドを実行します。
  181.     なにもしない            なにもしません。
  182.     ジャンプ[番号]        編集枠にマクロリストのコマンド番号を数値で入力します。
  183.     ジャンプ[ラベル]        編集枠にジャンプ先のラベル名を入力します。
  184.     終了する                マクロの実行を終了します。
  185.  
  186. 3.8.検索
  187.  マクロ実行中に設定した文字変数を利用した検索をおこなうことができます。検索が成功したときと失敗したときのそれぞれにジャンプコマンドを指定することができます。
  188.     ハ
  189.  検索対象:            検索対象を指定します。
  190.     文字列                    編集枠に検索文字列を入力します。
  191.     文字変数1〜8            文字変数1〜8を指定します。文字変数の内容で検索します。
  192.  全角・半角を同一視            全角・半角を同一視するか区別するかを指定します。
  193.  ひらがな・カタカナを同一視    ひらがな・カタカナを同一視するか区別するかを指定。
  194.  大文字・小文字を同一視        大文字・小文字を同一視するか区別するかを指定します。
  195.  逆方向に検索                    文書の先頭方向に検索するかを指定します。
  196.  正規表現                    正規表現による条件検索を指定します。
  197.                             詳しくはLightWayText説明書「5.正規表現による条件検索」
  198.                             の項を参照してください。
  199.  
  200.  検索に成功したとき:    検索に成功したときに、ジャンプコマンドを実行します。
  201.     なにもしない            なにもしません。
  202.     ジャンプ[番号]        編集枠にマクロリストのコマンド番号を数値で入力します。
  203.     ジャンプ[ラベル]        編集枠にジャンプ先のラベル名を入力します。
  204.     終了する                マクロの実行を終了します。
  205.  検索に失敗したとき:    検索に失敗したときに、ジャンプコマンドを実行します。
  206.     なにもしない            なにもしません。
  207.     ジャンプ[番号]        編集枠にマクロリストのコマンド番号を数値で入力します。
  208.     ジャンプ[ラベル]        編集枠にジャンプ先のラベル名を入力します。
  209.     終了する                マクロの実行を終了します。
  210.  
  211. 3.9.問合せ
  212.  入力ダイアログを利用した文字・数値入力と、アラートによるメッセージ表示の問合せをおこないます。入力ダイアログのときは、問合せがOKのときとキャンセルのときのそれぞれにジャンプコマンドを指定することができます。
  213.     ハ
  214.  入力ダイアログ        入力ダイアログを指定します。
  215.  アラート表示            アラート表示を指定します。
  216.  メッセージ:            編集枠にメッセージを入力します。メッセージが未入力のときは、
  217.                         処理対象に指定した文字変数の内容をメッセージとして表示します。
  218.  処理対象:            入力ダイアログで入力した文字列を格納する変数を指定します。
  219.     文字変数1〜8            文字変数に文字列を格納します。
  220.     数値変数1〜8            数値変数に数値を格納します。
  221.  
  222.  問合せがOKのとき:    問合せがOKのときに、ジャンプコマンドを実行します。
  223.     なにもしない            なにもしません。
  224.     ジャンプ[番号]        編集枠にマクロリストのコマンド番号を数値で入力します。
  225.     ジャンプ[ラベル]        編集枠にジャンプ先のラベル名を入力します。
  226.     終了する                マクロの実行を終了します。
  227.  問合せがキャンセルのとき:    問合せがキャンセルのときに、ジャンプコマンドを実行。
  228.     なにもしない            なにもしません。
  229.     ジャンプ[番号]        編集枠にマクロリストのコマンド番号を数値で入力します。
  230.     ジャンプ[ラベル]        編集枠にジャンプ先のラベル名を入力します。
  231.     終了する                マクロの実行を終了します。
  232.  
  233. 3.10.その他
  234.  LightWayTextの状態の設定と取得の処理を、その他のコマンドとしてまとめました。
  235.     ハ
  236.  処理内容:
  237.   なにもしない            なにもしません。
  238.   次のウインドウに移動    次のウインドウを編集可能状態にします。
  239.   前のウインドウに移動    前のウインドウを編集可能状態にします。
  240.      ウインドウの次と前は、ウインドウメニューに表示されている文書名の順番となります。
  241.      処理対象に文字変数を指定したときは、文字変数の内容を文書名として、指定した名前
  242.      のウインドウを編集可能状態にします。指定した名前のウインドウが開いていないとき
  243.      は、最近の書類メニューの書類名リストを検索して、見つかればその書類を開いて編集
  244.      可能状態にします。
  245.   行番号を指定して移動    処理対象に指定した数値変数の内容で行番号ジャンプします。
  246.   文書名を設定            処理対象に指定した文字変数の内容を文書名にします。
  247.   文書名を取得            処理対象に指定した文字変数に文書名を格納します。
  248.   今日の日付を取得        処理対象に指定した文字変数に日付を格納します。
  249.                             処理対象に数値変数を指定したときは次の形式で格納します。
  250.                             (例)1998年 1月 5日(月) ->  199801052
  251.                                数値の下1桁は曜日で1:日,2:月,..,7:土となります。
  252.   現在の時刻を取得        処理対象に指定した文字変数に時刻を格納します。
  253.                             処理対象に数値変数を指定したときは次の形式で格納します。
  254.                             (例)4 : 25 PM  ->  162500
  255.                                数値の下2桁は秒数で00から59となります。
  256.   行番号スタート            処理対象に指定した数値変数の内容で行番号スタートします。
  257.   行番号クリア            処理対象に指定した数値変数の内容で行番号クリアします。
  258.                             処理対象になにも指定していない場合は、LightWayTextの
  259.                             現在のカーソル行で行番号スタート・行番号クリアします。
  260.  
  261.  
  262. 4.登録したマクロの削除
  263.  登録したマクロをLightWayTextから削除する場合は、編集メニュー-キーマクロメニューの「キーマクロ設定...」を実行してキーマクロ設定ダイアログで削除します。
  264.     ハ
  265.  
  266.  
  267. 5.マクロの作成例
  268.  マクロの作成例をマクロリストの表示形式であらわします。
  269.  
  270. (例1)行末のスペース削除
  271.  文書内のすべての行末の半角スペース・全角スペース・タブを削除するマクロ
  272.     1 キー操作 先頭行へ移動
  273.     2 ラベル  loop1
  274.     3 検索   [  ¥t]+$+正(失敗)終了する
  275.     4 キー操作 1文字左を削除
  276.     5 ジャンプ ラベル:loop1
  277.  
  278. (例2)選択文字列で検索・置換...
  279.  検索・置換...で選択文字列を検索対象にするマクロ
  280.     1 比較   選択された文字数 == 0 (正)ラベル:skip1
  281.     2 メニュー 検索文字列を設定
  282.     3 ラベル  skip1
  283.     4 メニュー 検索・置換...
  284.  
  285. (例3)日付ペースト
  286.  今日の日付をLightWayTextにペーストするマクロ
  287.     1 その他  今日の日付を取得+文字変数1
  288.     2 変数   文字変数1ペースト
  289.  
  290. (例4)日付を平成でペースト
  291.  今日の日付を西暦から平成に変換してLightWayTextにペーストするマクロ
  292.     1 その他  今日の日付を取得+数値変数1
  293.     2 文字入力 平成
  294.     3 変数   数値変数2=数値変数1
  295.     4 変数   数値変数2÷100000
  296.     5 変数   数値変数2−1988
  297.     6 変数   数値変数2ペースト
  298.     7 文字入力 年
  299.     8 変数   数値変数2=数値変数1
  300.     9 変数   数値変数2÷1000
  301.     10 変数   数値変数2%100
  302.     11 変数   数値変数2ペースト
  303.     12 文字入力 月
  304.     13 変数   数値変数2=数値変数1
  305.     14 変数   数値変数2÷10
  306.     15 変数   数値変数2%100
  307.     16 変数   数値変数2ペースト
  308.     17 文字入力 日
  309.  
  310. (例5)選択範囲の行のソート
  311.  選択範囲の行を小さい順に並べ替えるマクロ
  312.     1 変数   数値変数1=カーソル位置の行番号
  313.     2 変数   数値変数2=選択終了位置の行番号
  314.     3 比較   数値変数1 == 数値変数2(正)終了する
  315.     4 ラベル  loop1
  316.     5 変数   文字変数1=カーソル行の文字列
  317.     6 変数   数値変数3=数値変数1
  318.     7 変数   数値変数4初期化
  319.     8 ラベル  loop2
  320.     9 比較   数値変数3 >= 数値変数2(正)ラベル:skip1
  321.     10 変数   数値変数3+1
  322.     11 その他  行番号を指定して移動+数値変数3
  323.     12 比較   カーソル行の文字列 >= 文字変数1(正)ラベル:loop2
  324.     13 変数   文字変数2=カーソル行の文字列
  325.     14 キー操作 1行を削除
  326.     15 変数   文字変数1ペースト
  327.     16 キー操作 上へ移動
  328.     17 変数   文字変数1=文字変数2
  329.     18 変数   数値変数4=1
  330.     19 ジャンプ ラベル:loop2
  331.     20 ラベル  skip1
  332.     21 その他  行番号を指定して移動+数値変数1
  333.     22 比較   数値変数4 == 0(正)ラベル:skip2
  334.     23 キー操作 1行を削除
  335.     24 変数   文字変数1ペースト
  336.     25 キー操作 上へ移動
  337.     26 ラベル  skip2
  338.     27 変数   数値変数1+1
  339.     28 キー操作 下へ移動
  340.     29 比較   数値変数1 < 数値変数2(正)ラベル:loop1
  341.  
  342.  
  343.